package proyecto.gestionarDatosDeCursos;

import java.text.SimpleDateFormat;
import java.util.Date;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import proyecto.BusinessLogic.CursoBLRemote;
import proyecto.EntityBeans.Curso;
import util.Common;
 
public class ModificarCursoAction extends Action {
	
	public ActionForward execute(
			ActionMapping mapping,
			ActionForm form,			
			HttpServletRequest request,
			HttpServletResponse response) {
						
			CursoBLRemote cursoBLRemote = null;
			final Context context;
		
			AltaCursoForm cursoForm =
			(AltaCursoForm) form;		
			
			Date fechaAlta = null;
			SimpleDateFormat targetDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
						
			if (isCancelled(request)){				
				return mapping.findForward(Common.SHOWLIST);
			}
			else{			
				try
				{							
					context = new InitialContext();					
					cursoBLRemote = (CursoBLRemote) context.lookup("CursoBL/remote");
					
					String fecha = cursoForm.getFechaAlta();
					fechaAlta = targetDateFormat.parse(fecha);	
					System.out.println(" fecha convertida " + fechaAlta);
					
					Curso curso = new Curso(cursoForm.getIdCurso(),cursoForm.getNombre(),cursoForm.getDescripcion(), fechaAlta);
					//System.out.println("antes del merge" + " fecha " + cursoForm.getFechaAlta().toString());
					cursoBLRemote.merge(curso);
									
					
				} catch (NamingException e)				{
					e.printStackTrace();
					throw new RuntimeException(e);					
				} catch (java.text.ParseException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}

				return mapping.findForward(Common.SHOWLIST);
								
		}
	}
}
